﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DotNet.AbstartAndInterface
{
    public abstract class BasePhone
    {       
        //1.属性
        public string id { get; set; }
        public string name { get; set; }
        //2.字段
        public string userPwd = "maru";
        //3.委托
        public delegate void DoNothing();
        //4.抽象方法
        public abstract void Brand();
        public abstract void System();
        public abstract void Call();
        //5.普通方法(继承的子类无法对其进行覆写，可以对其进行重写)
        public void show()
        {
            Console.WriteLine("这是父类show方法");
        }
        //6.虚方法(可以被任何继承他的子类所覆写)
        public virtual void ShowVirtual()
        {
            Console.WriteLine("这是父类showVirtual方法");
        }
        //7.泛型方法抽象方法
        public abstract void Do<T>();
    }
}
